Open Bug 511331 Opened 16 years ago Updated 3 years ago

If "IMAP server directory: [Gmail]" is specified, Junk folder selection UI generates spamActionTargetFolder=<protocol>://...@.../Spam for [Gmail]/Spam folder(Mismatch between implementation of "IMAP server directory:" and special folder path selection UI)

Categories

(MailNews Core :: Account Manager, defect)

x86
Windows XP
defect

Tracking

(Not tracked)

People

(Reporter: World, Unassigned)

References

(Blocks 2 open bugs)

Details

Attachments

(1 file)

Attached file IMAP log
[Build Id] > Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.3pre) Gecko/20090818 Shredder/3.0b4pre This is similar issue to Bug 491424(Trash selection UI and namespace usage). If "IMAP server folder: [Gmail]" is specified for Gmail IMAP, spamActionTargetFolder = Spam is generated instead of spamActionTargetFolder = [Gmail]/Spam, when Spam(real folder path name == [Gmail]/Spam) is selected at folder selection UI of Other: in Junk Settings. > user_pref("mail.server.server2.is_gmail", true); > user_pref("mail.server.server2.namespace.personal", "\"\""); > user_pref("mail.server.server2.server_sub_directory", "[Gmail]"); > user_pref("mail.server.server2.spamActionTargetAccount", "imap://yatter.one%40gmail.com@imap.gmail.com"); > user_pref("mail.server.server2.spamActionTargetFolder", "imap://yatter.one%40gmail.com@imap.gmail.com/Spam"); When "IMAP server folder: [Gmail]" is specified, [Gmail]/Spam is displayed as if root-level Spam at (a) folder pane, (b) folder slection UI, (c) Location: of folder properties. Folder selection UI looks confused by it. (Phenomenon after this bug) Once entry of spamActionTargetFolder = imap://<userName>@<hostname>/Spam was generated, Tb trunk created root-level "Junk" folder upon first access to IMAP server(creation request of of root-level Spam is not seen in log). Tb looks to assume "spamActionTargetFolder exists", and if spamActionTargetFolder doesn't exist, Tb looks to fall back to root-level "Junk" folder. This was true even after "IMAP server folder:" was reset to null again. >(IMAP log upon first access ti Gmail IMAP after restart of Tb) > 00000003 0.00331774 (snip):ProcessCurrentURL:imap://yatter%2Eone%40gmail%2Ecom@imap.gmail.com:993/ensureExists%3E/Junk: = currentUrl > 00000076 3.73834324 (snip):SendData: 7 xlist "" "Junk" > 00000078 4.17479801 (snip):CreateNewLineFromSocket: 7 OK Success > 00000079 4.17518282 (snip):SendData: 8 create "Junk" > 00000081 4.79366446 (snip):CreateNewLineFromSocket: 8 OK Success > 00000082 4.79393816 (snip):SendData: 9 subscribe "Junk" > 00000084 5.41416502 (snip):CreateNewLineFromSocket: 9 OK Success > 00000085 5.41440153 (snip):SendData: 10 xlist "" "Junk" > 00000087 5.85264921 (snip):CreateNewLineFromSocket: * XLIST (\HasNoChildren) "/" "Junk" > 00000089 5.86683512 (snip):CreateNewLineFromSocket: 10 OK Success After creation of the root-level Junk, Tb changed icon of Junk to "wastepaper icon"(then unable to delete here after) upon first IMAP folder open after restart. Although root-level Junk was created, Tb used [Gmail]/Spam as junk folder, as designed. I think Bug 508838 is above phenomenon, although bug opener of that bug says "hiding of [Gmail]/Spam by Gmail's advanced feature" is trigger/cause of his problem.
Summary: If "IMAP server folder: [Gmail]" is specified, Junk folder selection UI generates mail.server.server2.spamActionTargetFolder=imap://<userName>@<hostname>/Spam for [Gmail]/Spam folder → If "IMAP server folder: [Gmail]" is specified, Junk folder selection UI generates mail.server.serverN.spamActionTargetFolder=imap://<userName>@<hostname>/Spam for [Gmail]/Spam folder
FYI. If "IMAP server folder:" is specified, next entry is generated. > mail.server.server2.is_NOT_gmail = true This entry is not reset unless manually clear, even after "IMAP server folder:" is cleared again.
Blocks: 160644
"Creation of root-level Junk" was a variation of phenomena of Bug 511331. If "IMAP server directory:" is set(this bug's case), phenomenon becomes "creation of root-level Junk" instead of "creation of folder of account label". Correction of Comment #1. mail.server.server2.is_NOT_gmail was set by me, by a line in user.js which I used to set mail.server.server2.is_gmail = true or false, according to test case without Config Editor use. Ignore comment #1, please.
Original for phenomenon of "Creation of root-level Junk" is Bug 511331. In Bug 511331's case, IMAP folder of account label name is created.
Same problem occurs on Copies&Folders. If "IMAP server directory: [Gmail]", imap://.../Drafts is set in mail.identity.idX.draft_folder instead of imap://.../[Gmail]/Drafts. > mail.identity.idX.archive_folder (Archives) > mail.identity.idX.draft_folder (Drafts) > mail.identity.idX.fcc_folder (Sent) > mail.identity.idX.stationery_folder (Templates)
Cause is mismatch among: (A) folder display at; folder pane display, folder list in folder selection, Location: in folder properties, subscription list Removes string of "IMAP server directory:". (B) Folder selection UI at; Others: of Copies&Folders, Others: of Junk Setting, Saves folder name passed by (A) as absolute path format. (C) IMAP folder access; Access with { IMAP server directory: string + folder name of (A) } (D) Special folder access; Although path specified in spamActionTargetFolder, archive_folder, draft_folder, fcc_folder, stationery_folder is absolute path format, extraction of folder name is executed, and (C) is executed. (E) Although ordinal access of special folder is executed by (B) & (D), EnsureExists of Junk treats spamActionTargetFolder as absolute path. (F) Upon extraction at (D), first "/" is not removed. imap://.../Sent => /Sent Because of (B) and (D), problem occurs in next cases. (i) spamActionTargetFolder, xxx_folder is defined without "IMAP server directory:" setting. "IMAP server directory:" is set after special folder path definition. (ii) spamActionTargetFolder, xxx_folder is defined with "IMAP server directory:". "IMAP server directory:" is removed after special folder path definition. Because of (E), next problem happens, if spamActionTargetFolder is defined while "IMAP server directory:" is set. (iii) Creation of IMAP folder of account label. (Bug 503735 Comment #13) (iv) Creation of root-level Junk (Comment #0) Because of (F), problem of Bug 497806 occurs, if delimiter is ".". (v) Folder name becomes { IMAP server directory: + /Sent }. IMAP server directory: INBOX. => INBOX./Sent IMAP server directory: INBOX => INBOX/Sent I think "IMAP server directory:" string should be ignored, if it's different from namespace setting or responce to NAMESPACE command. (i.e. Purpose of "IMAP server directory:" should be limited to hiding of top most folder name when namespace is used.)
(Note-1) Because "folder selection list" used by message filter, "IMAP server directory:" setting can cause inconsistency/imcompatibility of folder path setting in message filter rule. (Note-2) Offline use setting panel for auto-sync doesn't use "folder selection list" type display. Offline use setting panel displays full structure, even if "IMAP server directory:" is set. Synchronization&Storage/Message Synchronizing [ X ] Keep message for this account on this computer [ Advanced ]
Above (Note-2) was wrong. Sorry for spam. Offline use setting panel for auto-sync was also affected by "IMAP server directory:" setting.
Summary: If "IMAP server folder: [Gmail]" is specified, Junk folder selection UI generates mail.server.serverN.spamActionTargetFolder=imap://<userName>@<hostname>/Spam for [Gmail]/Spam folder → If "IMAP server folder: [Gmail]" is specified, Junk folder selection UI generates spamActionTargetFolder=<protocol>://...@.../Spam for [Gmail]/Spam folder (Mismatch between implementation of "IMAP server directory:" and special folder path selection UI)
Current mail.server.serverN.spamActionTargetFolder works with no problem, if IMAP server directory: is not specified by user. Even when IMAP server directory: is set, mail.server.serverN.spamActionTargetFolder works with no problem, if spamActionTargetFolder is set via Others: after setting change of IMAP server directory:. User has to do next when user sets/resets/changes IMAP server directory:. If user already has folder path setting via Others: of Copies&Folders and Junk settings, user has to set folder path setting via Others: of Copies&Folders and Junk settings again, after setting change of IMAP server directory:. Or else, problem like Bug 503735 occurs, because "junk folder is not found" condition happens. I think it's applicable to folder path setting in Message Filter rules.
I think this is related, but in the Activity Manager I keep getting: "The current command did not succeed. The mail server responded:Duplicate folder name [Gmail]/Junk (Failure)." I have my "IMAP server directory" set to "[Gmail]", but I'm not specifying "Junk" anywhere... I use "Trash"? I don't even see a Junk folder in any of the IMAP folder subscription lists.
(In reply to comment #9) > I think this is related, but in the Activity Manager I keep getting: > "The current command did not succeed. The mail server responded:Duplicate > folder name [Gmail]/Junk (Failure)." > I have my "IMAP server directory" set to "[Gmail]", but I'm not specifying > "Junk" anywhere... > I use "Trash"? I don't even see a Junk folder in any of the IMAP folder subscription lists. Chris Tashjian, can you open separate bug for your problem, with attaching IMAP log? > https://wiki.mozilla.org/MailNews:Logging
Summary: If "IMAP server folder: [Gmail]" is specified, Junk folder selection UI generates spamActionTargetFolder=<protocol>://...@.../Spam for [Gmail]/Spam folder (Mismatch between implementation of "IMAP server directory:" and special folder path selection UI) → Junk folder selection UI generates spamActionTargetFolder=<protocol>://...@.../Spam for [Gmail]/Spam folder(Mismatch between implementation of "IMAP server directory:" and special folder path selection UI) If "IMAP server directory: [Gmail]" is specified
Severity: minor → S4
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: